Part Number Hot Search : 
180515 500RL UN211V 00250 C7108A NTE30069 160BC M32C83T
Product Description
Full Text Search
 

To Download MPL3115A2 Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  freescale semiconductor document number: MPL3115A2 data sheet: advance information rev 2.2, 07/2012 an energy efficient solution by freescale ? 2011-2012 freescale semiconducto r, inc. all ri ghts reserved. this document contains information on a new product. specifications and information herein are subject to c hange without notice. i 2 c precision altimeter the MPL3115A2 employs a mems pressure sensor with an i 2 c interface to provide accurate pressure/altitude and temperature data. the sensor outputs are digitized by a high resolution 24-bit adc. internal processing removes compensation tasks from the host mcu system. multiple user-programmable, power saving, interrupt and autonomous da ta acquisition modes are available, including programmed acquisition cycle timing, and poll-only modes. typical active supply current is 40 ? a per measurement-second for a stable 30 cm output resolution. pressure output can be resolved with output in fractions of a pascal, and altitude can be resolved in fractions of a meter. the MPL3115A2 is offered in a 5 mm by 3 mm by 1.1 mm lga package and specified for operation from -40 ?c to 85 ? c. package is surface mount with a stainless steel lid and is rohs compliant. features ? 1.95v to 3.6v supply voltage, internally regulated by ldo ? 1.6v to 3.6v digital interface supply voltage ? fully compensated internally ? direct reading, compensated ? pressure: 20-bit measurement (pascals) ? altitude: 20-bit measurement (meters) ? temperature: 12-bit measurement (degrees celsius) ? programmable events ? autonomous data acquisition ? resolution down to 1 ft. / 30 cm ? 32 sample fifo ? ability to log data up to 12 days using the fifo ? 1 second to 9 hour data acquisition rate ? i 2 c digital output interface (operates up to 400 khz) application examples ? high accuracy altimetry ? smartphones/tablets ? personal electronics altimetry ? gps dead reckoning ? gps enhancement for emergency services ? map assist, navigation ? weather station equipment ordering information device name package options case no. # of ports pressure type digital interface none single dual gauge differential absolute MPL3115A2 tray 2153 ? ? ? MPL3115A2r1 tape & reel (1000) 2153 ? ? ? MPL3115A2 50 to 110 kpa top view lga package 5.0 mm by 3.0 mm by 1.1 mm 1 int1 sda v dd cap v ddio gnd int2 scl 2 3 4 8 7 6 5 pin connections
MPL3115A2 sensors 2 freescale semiconductor, inc. related documentation the MPL3115A2 device features and operat ions are described in a variety of reference manuals, user guides, and application notes. to find the most-current versions of these documents: 1. go to the freescale homepage at: http://www.freescale.com/ 2. in the keyword search box at the top of the page, enter the device number MPL3115A2. 3. in the refine your result pane on the left, click on the documentation link. contents 1 block diagram and pin descriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 2 mechanical and electrical specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.1 mechanical characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 3 electrical characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6 3.1 i 2 c interface characteristics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 3.2 absolute maximum ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 4 quick start quick setup guide . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 5 terminology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 5.1 resolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 5.2 accuracy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 5.3 pressure/altitude. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14 5.4 power modes of operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 6 functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 6.1 factory calibration. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 6.2 barometer/altimeter function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 6.3 temperature function. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 6.4 autonomous data acquisition. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 6.5 fifo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 6.6 external interrupts. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 6.7 pressure/altitude and temperature delta. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 6.8 min/max data value storage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 6.9 digital interface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 7 register descriptions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 7.1 sensor status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 7.2 device id . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 7.3 fifo setup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 7.4 time delay register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 7.5 system mode register . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 7.6 system interrupt status . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 7.7 sensor data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 7.8 barometric pressure input . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 7.9 pressure/altitude target . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 7.10 temperature target . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 7.11 pressure/altitude window. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 7.12 temperature window . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 7.13 minimum pressure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 7.14 maximum pressure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 7.15 minimum temperature . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 7.16 maximum temperature. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 7.17 control registers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 7.18 offset correction. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 8 soldering/landing pad information . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 9 tape and reel specifications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
MPL3115A2 sensors freescale semiconductor, inc. 3 1 block diagram and pin descriptions figure 1. block diagram table 1. pin descriptions pin name function 1v dd v dd power supply connection (1.95-3.6v) 2 cap external capacitor 3 gnd ground 4v ddio digital interface power supply (1.62-3.6v) 5 int2 pressure interrupt 2 6 int1 pressure interrupt 1 7sda i 2 c serial data 8scl i 2 c serial clock sense amp adc mux temp reference + regulator digital signal pr ocessing and contr ol sda scl int2 vdd vddio tr im logic clock oscillator pressure sensor cap int1 v dd v ddio cap sda scl int1 int2 clock oscillator trim logic reference + regulator
MPL3115A2 sensors 4 freescale semiconductor, inc. figure 2. pin connections the device power is supplied through the v dd line. power supply decoupling capacitors (100 nf ceramic plus 10 ? f bulk or 10 ? f ceramic) should be placed as near as possible to pin 1 of the device. a second 100 nf capacitor is used to bypass the internal regulator. the functions, threshold and the timing of t he interrupt pins (int1 and int2) are user programmable through the i 2 c interface. scl sda int2 vddio 100nf 100nf 10 f vdd int1 1 8 v ddio v dd 2 3 45 6 7
MPL3115A2 sensors freescale semiconductor, inc. 5 2 mechanical and electrical specifications 2.1 mechanical characteristics table 2. mechanical characteristics @ v dd = 2.5v, t = 25c unless otherwise noted (1) 1. measured at 25c, over 50 kpa to 110 kpa. ref symbol parameter test conditions min typ max unit pressure sensor 1p fs measurement range calibrated range 50 110 kpa operational range 20 110 kpa 2 pressure reading noise 1x oversample (2) 2. oversample (osr) modes internally co mbine and average samples to reduce noise. 19 pa rms 128x oversample (2) 1.5 pa rms 3 pressure absolute accuracy 50 to 110 kpa over 0c to 50c -0.4 0.4 kpa 50 to 110 kpa over -10c to 70c 0.4 4 pressure relative accuracy relative accuracy during pressure change between 70 to 110 kpa at any constant temperature between -10c to 50c 0.05 kpa relative accuracy during changing temperature between -10c to 50c at any constant pressure between 50 kpa to 110 kpa 0.1 5 pressure/altitude resolution (3)(4)(5) 3. smallest bit change in register represen ts minimum value change in pascals or meters . typical resolution to signify change in altitude is 0.3m. 4. at 128x oversample ratio. 5. reference pressure = 101.325 kpa (sea level). barometer mode 0.25 1.5 pa altimeter mode 0.0625 0.3 m 6 output data rate ost (6) mode 6. ost = one shot mode. 100 hz fifo mode 1 hz temperature sensor 7t fs measurement range -40 +85 c 8 temperature accuracy @ 25c 1 c over temperature range 3 9t op operating temperature range -40 +85 c 10 board mount drift after solder reflow 0.15 kpa 11 long term drift after a period of 1 year 0.1 kpa
MPL3115A2 sensors 6 freescale semiconductor, inc. 3 electrical characteristics table 3. electrical characte ristics @ vdd = 2.5v, t = 25c unless otherwise noted. ref symbol parameter test conditions min typ max unit 1v ddio i/o supply voltage 1.62 1.8 3.6 v 2v dd operating supply voltage 1.95 2.5 3.6 v 3 i dd integrated current 1 update per second highest speed mode oversample = 1 8.5 a 4 standard mode oversample = 16 40 5 high resolution mode oversample = 128 265 6i ddmax max current during acquisition and conversion during acquisition 2 ma 7i ddstby supply current drain in standby mode standby mode selected sbyb = 0 2a 8vih digital high level input voltage scl, sda 0.75 v ddio 9vil digital low level input voltage scl, sda 0.3 v ddio 10 voh high level output voltage int1, int2 i o = 500 a 0.9 v ddio 11 vol low level output voltage int1, int2 i o = 500 a 0.1 v ddio 12 vols low level output voltage sda i o = 500 a 0.1 v ddio 14 t on turn-on time (1) 1. time to obtain valid data from ?standby? mode to ?active? mode. highest speed mode (2) 2. high speed mode is achieved by setti ng the oversample rate of 1x. 60 ms highest resolution mode (3) 3. high resolution mode is achieved by setting the oversample to 128x. 1000 16 t op operating temperature range -40 25 +85 c i 2 c addressing MPL3115A2 uses 7-bit addressing and does not acknowledge general call address 000 0000. slave address has been set to 0x60 or 110 0000. 8-bit read is 0xc1, 8-bit write is 0xc0
MPL3115A2 sensors freescale semiconductor, inc. 7 3.1 i 2 c interface characteristics figure 3. i 2 c slave timing diagram table 4. i 2 c slave timing values (1) 1. all values referred to vih(min) and vil(max) levels. ref symbol parameter i 2 c unit condition min max 1f scl scl clock frequency pull-up = 1 k ?? c b = 400 pf 0 400 khz 2f scl scl clock frequency pull-up = 1 k ?? c b = 20 pf 0 4 mhz 3t buf bus free time between stop and start condition 1.3 s 4t hd;sta repeated start hold time 0.6 s 5t su;sta repeated start setup time 0.6 s 6t su;sto stop condition setup time 0.6 s 7t hd;dat sda data hold time (2) 2. t hd;dat is the data hold time that is measur ed from the falling edge of scl, applies to data in transmission and the acknowledge. 50 (3) 3. the device must internally provide a hold time of at least 300 ns for the sda signal (with respect to the vih(min) of the scl signal) to bridge the undefined region of the falling edge of scl. (4) 4. the maximum t hd;dat must be less than the maximum of t vd;dat or t vd;ack by a transition time. this device does not stretch the low period (t low) of the scl signal. ns 8t su;dat sda setup time 100 (5) 5. a fast mode i 2 c device can be used in a standard mode i 2 c system, but the requirement t su;dat 250 ns must then be met. this will automatically be the case if the device does not stretch the lo w period of the scl signal. if such a device does stretch the lo w period of the scl signal, it must output the next data bit to the sda line t r (max) + t su;dat = 1000 + 250 = 1250 ns (according to the standard mode i 2 c specification) before the scl line is released. al so the acknowledge timing must meet this set-up time. ns 9t low scl clock low time 1.3 s 10 t high scl clock high time 0.6 s 11 t r sda and scl rise time 20 + 0.1c b (6) 6. c b = total capacitance of one bus line in pf. 300 ns 12 t f sda and scl fall time (3)(6)(7)(8) 7. the maximum t f for the sda and scl bus lines is specified at 300 ns. the maximum fall time for the sda output stage t f is specified at 250 ns. this allows series protection resi stors to be connected in between the sda and the scl pins and the sda/scl bus lines wi thout exceeding the maximum specified t f . 8. in fast mode plus, fall time is specified the same for both output stage and bus timing. if series resistors are used, design ers should allow for this when considering bus timing. 20 + 0.1c b (6) 300 ns 13 t sp pulse width of spikes that are suppressed by internal input filter 50 ns
MPL3115A2 sensors 8 freescale semiconductor, inc. figure 4. i 2 c bus transmission signals scl sda start signal ack bit 12345678 msb lsb 12345678 msb lsb stop signal no scl sda 1234567 8 msb lsb 1 2 5 678 msb lsb repeated 34 9 9 ad7 ad6 ad5 ad4 ad3 ad2 ad1 r/w xxx d7 d6 d5 d4 d3 d2 d1 d0 calling address read/ data byte ad7 ad6 ad5 ad4 ad3 ad2 ad1 r/w ad7 ad6 ad5 ad4 ad3 ad2 ad1 r/w new calling address 99 xx ack bit write start signal start signal ack bit calling address read/ write stop signal no ack bit read/ write
MPL3115A2 sensors freescale semiconductor, inc. 9 3.2 absolute maximum ratings stresses above those listed as ?absolute maximum ratings? may c ause permanent damage to the device. this is a stress rating only and functional operation of the device under these conditions is not implied. exposure to maximum rating conditions for ex - tended periods may affect device reliability. table 5. maximum ratings characteristic symbol value unit maximum applied pressure p max 500 kpa supply voltage v dd -0.3 to 3.6 v interface supply voltage v ddio -0.3 to 3.6 v input voltage on any control pin (scl, sda) vin -0.3 to v ddio + 0.3 v operating temperature range t op -40 to +85 c storage temperature range t stg -40 to +125 c table 6. esd and latch-up protection characteristics rating symbol value unit human body model hbm 2000 v machine model mm 200 v charge device model cdm 500 v latch-up current at t = 85c ? 100 ma this is a mechanical shock sensitive device, impro per handling can cause permanent damage to the part or cause the part to otherwise fail. this is an esd sensitive device, improper h andling can cause permanent damage to the part.
MPL3115A2 sensors 10 freescale semiconductor, inc. 4 quick start quick setup guide the quick setup guide shows how to put the part in altimeter m ode with an osr of 128. you may then select your data retrieval method between polling, interrupt or fifo. the following routines are used: /*********************************************************\ * iic write register \*********************************************************/ void iic_regwrite(byte address, byte reg,byte val) { iicc_tx = 1; // transmit mode iic_start(); // send start iic_cyclewrite(address); // send iic "write" address iic_cyclewrite(reg); // send register iic_cyclewrite(val); // send value iic_stop(); // send stop } /*********************************************************\ * iic read register \*********************************************************/ byte iic_regread(byte address, byte reg) { byte b; iicc_tx = 1; // transmit mode iic_start(); // send start iic_cyclewrite(address); // send iic "write" address iic_cyclewrite(reg); // send register iic_repeatstart(); // send repeat start iic_cyclewrite(address+1); // send iic "read" address b = iic_cycleread(1); // *** dummy read: reads // "iic_readaddress" value *** b = iic_stopread(); // send stop read command iicd return b; } /*********************************************************\ * iic read multiple registers \*********************************************************/ void iic_regreadn(byte address, byte reg1,byte n,byte *array) { byte b; iicc_tx = 1; // transmit mode iic_start(); // send start iic_cyclewrite(address); // send iic "write" address iic_cyclewrite(reg1); // send register iic_repeatstart(); // send repeat start iic_cyclewrite(address+1); // send iic "read" address b = iic_cycleread(n); // *** dummy read: reads // "iic_readaddress" value ***
MPL3115A2 sensors freescale semiconductor, inc. 11 while (n>1) // read n-1 register values { n--; b = iic_cycleread(n); *array = b; array++; } b = iic_stopread(); // send stop read which returns the // iicd *array = b; } /*********************************************************\ * initiate iic start condition \*********************************************************/ void iic_start(void) { iicc_mst = 1; timeout = 0; while ( (!iics_busy) && (timeout<1000)) timeout++; if (timeout >= 1000) error |= 0x01; } //*** wait until busy=0 /*********************************************************\ * initiate iic stop condition \*********************************************************/ byte iic_stopread(void) { iicc_mst = 0; timeout = 0; while ( (iics_busy) && (timeout<1000)) timeout++; if (timeout >= 1000) error |= 0x02; return iicd; } //*** wait until busy=0 for further information and examples please read application note an4519 data manipulation and basic settings of the MPL3115A2 command line interface.
MPL3115A2 sensors 12 freescale semiconductor, inc. flow chart for polling or interrupt - no fifo figure 5. polling or interrupt - no fifo check for interrupt on pin int2 poll data or use interrupt int2 yes polling /* is src_drdy set */ (int_s & 0x80) == true service interrupt and clear yes no yes no interrupt /* enable drdy interrupt */ iic_regwrite(slaveaddressiic, 0x29, 0x80); /* set active */ iic_regwrite(slaveaddressiic, 0x26, 0xb9); /* enable data flags in pt_data_cfg */ iic_regwrite(slaveaddressiic, 0x13, 0x07); /* i2c address is 0xc0 */ slaveaddressiic = 0xc0 /* set active */ iic_regwrite(slaveaddressiic, 0x26, 0xb9); /* read status register */ sta = iic_regread(slaveaddressiic, 0x00); /* is data ready */ (sta & 0x08) == true /* read int_source */ int_s = iic_regread(slaveaddressiic, 0x12); /* ? read ? out_p ? and ? out_t ? */ /* ? this ? clears ? the ? drdy ? interrupt ? */ ? out_p_msb ? = ? iic_regread(slaveaddressiic, ? 0x01); out_p_csb ? = ? iic_regread(slaveaddressiic, ? 0x02); out_p_lsb ? = ? iic_regread(slaveaddressiic, ? 0x03); out_t_msb ? = ? iic_regread(slaveaddressiic, ? 0x04); out_t_lsb ? = ? iic_regread(slaveaddressiic, ? 0x05); ????????????? clear ? interrupt /* ? read ? out_p ? and ? out_t ? */ /* ? this ? clears ? the ? drdy ? interrupt ? */ ? out_p_msb ? = ? iic_regread(slaveaddressiic, ? 0x01); out_p_csb ? = ? iic_regread(slaveaddressiic, ? 0x02); out_p_lsb ? = ? iic_regread(slaveaddressiic, ? 0x03); out_t_msb ? = ? iic_regread(slaveaddressiic, ? 0x04); out_t_lsb ? = ? iic_regread(slaveaddressiic, ? 0x05); /* set to altimeter with an osr = 128 */ iic_regwrite(slaveaddressiic, 0x26, 0xb8); /* set int to active low open drain */ iic_regwrite(slaveaddressiic, 0x28, 0x11); no
MPL3115A2 sensors freescale semiconductor, inc. 13 flow chart for fifo setup figure 6. fifo setup service interrupt and clear /* set to altimeter with an osr = 128 */ iic_regwrite(slaveaddressiic, 0x26, 0xb8); /* set int to active low open drain */ iic_regwrite(slaveaddressiic, 0x28, 0x11); /* enable data flags in pt_data_cfg */ iic_regwrite(slaveaddressiic, 0x13, 0x07); /* i2c address is 0xc0 */ slaveaddressiic = 0xc0 /* enable fifo with a watermark of 10 */ iic_regwrite(slaveaddressiic, 0x0f, 0x4a); /* dump fifo with a multi byte i2c read */ iic_regreadn(slaveaddressiic, 0x01, 32, &fifo_data[0].sample.bt.b_msb); check for interrupt on pin int2 /* is src_fifo set */ (int_s & 0x40) == true yes no /* enable fifo interrupt */ iic _regwrite(slaveaddressiic, 0x29, 0x40); /* set active */ iic_regwrite(slaveaddressiic, 0x26, 0xb9); /* read int_source */ int_s = iic_regread(slaveaddressiic, 0x12); /* set int to active low open drain */ iic_regwrite(slaveaddressiic, 0x28, 0x11); no /* read fifo status, this clears the int */ f_s = iic_regread(slaveaddressiic, 0x0d); /* is f_wmrk_flag set */ (f_s & 0x40) == true yes no
MPL3115A2 sensors 14 freescale semiconductor, inc. 5 terminology 5.1 resolution the resolution of a pressure sensor is the minimum change of pressure that can be reliably measured. the usable resolution of the MPL3115A2 is programmable, enabling the user to choose a compromise between acquisit ion speed, power consumption, and resolution that best fits the application. to simplify the programming, the data is always reported in the same format with differing number of usable bits. 5.2 accuracy 5.2.1 offset the offset is defined as the output signal obtained when the re ference pressure (a vacuum for an absolute pressure sensor) is applied to the sensor. offset error affects absolute pressure measurements but not relative pressure measurements. an alti- tude measurement is the pressure value in comparison to sea level, a barometric measurement is the pressure value read by the sensor, i.e. a measurement of total pressure seen (e.g. 70 kpa), or total height (e.g. 3000m) above sea level. a change in the offset will affect the pressure value or height seen above sea level as it shifts the sea level ?base reference?. an absolute pressure measurement is not the same as relative pressure measurement , where the pressure is compared when raising or lowering pres- sure in shorter intervals. this would be a walk up a hill, measur ing the pressure and altitude difference from start to finish. in the relative case, the offset shifts are shared in the two absolute measurements and negate each other during the pressure calcula- tion. for the MPL3115A2, the long term offs et shift can be removed by adjusting the pressure or altitude offset correction. thi s adjustment is provided to override the fact ory programmed values to compensate for offsets introduced by manufacturing and mounting stresses. it is highly recommended that this is utilized to realize th e full accuracy potential of the device. 5.2.2 linearity linearity compares the slope of the measur ement data to that of an ideal transfer function. it refers to how well a transducer? s output follows the equation pout = poff + sensitivity x p straight line equation over the operating pressure range. the method used by freescale to give the linearity spec is the end-point straight line method me asured at midrange pressure. 5.2.3 absolute pressure absolute pressure sensors measure an external pressure rela tive to a zero-pressure refere nce (vacuum) sealed inside the reference chamber of the die during manufacturing. this st andard allows comparison to a standard value set such that 14.7 psi = 101325 pa = 1 atm at sea level as a measurement target. the absolute pressure is used to determine altitude as it has a constant reference for comparison. measurement at sea level can be compared to measurement at a mountain summit as they use the same vacuum reference. the conversion of absolute pressure to altitude in meters is calculated based on us stan- dard atmosphere 1976 (nasa). note that absol ute pressure is not linear in nature to al titude; it is an ex ponential function. th e value of altitude, in increments of 0.0625 meters, can be read directly from the MPL3115A2, or the value of pressure in 0.25 pa s- cal (pa) units. 5.2.4 span span is the value of full scale output wit h offset subtracted, represent ing the full range of the pressure sensor. ideally the span is a specification over a constant temper ature. the MPL3115A2 uses internal temperature compensation to remove drift. span accuracy is the comparison of the measured difference and th e actual difference between the highest and lowest pressures in the specified range. 5.3 pressure/altitude the MPL3115A2 device is a high accuracy pressure sensor with integrated data calcul ation and logging capabilities. the al- titude calculations are based on the measured pressure, the user input of the equivalent sea level pressure (to compensate for local weather conditions) and the us standard atmosphere 1976 (nasa) to give the altitude readings. pressure is given in pas- cals (pa), and fractions of a pa. altitude is given in meters (m) and fractions of a meter. the altitude is calculated from the pres- sure using the equation below: where p 0 = sea level pressure (101326 p a ) and h is in meters. the MPL3115A2 uses this value since the offset register is defined as 2 pascals per lsb. h 44330.77 1 p p 0 ?? 0.1902632 ? off_h (register value) + ? ? ? =
MPL3115A2 sensors freescale semiconductor, inc. 15 5.4 power modes of operation figure 7. mode transition diagram 5.4.1 off unit is powered down and has no operating functionality. v dd and v ddio are not powered. 5.4.2 standby the digital sections are operational and the unit is capable of receiving commands and delivering stored data. the analog sections are off. the part is waiting for ctrl_reg1 to be configured and the part to enter active mode. 5.4.3 active both analog and digital sections are running. the unit is capable of gathering new data, and accepting commands. MPL3115A2 is fully functional. 6 functionality the device is a low-power, high accuracy digital output alti meter, barometer and thermometer, packaged in a 3 x 5 x 1.1 mm form factor. the complete device includes a sensing element, analog and digital signal processing and an i 2 c interface. the device has two operational modes, barometer and altimeter. both modes include a thermome ter temperature output func- tion. power consumption and sensitivity are pr ogrammable where the data oversampling ratio can be set to balance current con- sumption and noise/resolution. serial interface communications is through an i 2 c interface thus making the device particularly suitable for direct interfacing with a microcontroller. the dev ice features two independently programmable interrupt signals in t1 and int2. these can be set to generate an interrupt signal when a new set of pressure/altitu de and temperature data is avail- able, thereby simplifying data acquisition for the host controller. these interrupt pins can also be configured to generate int errupts when a user programmed set of conditions are met (see section 6.6). examples are: interrupt can be triggered when a single new data acquisition is ready, when a desired number of samples are stored within the internal fifo or when a change of pres- sure/altitude or temperature is detected. in raw mode, the fifo must be disabled and all other functi onality: alarms, deltas and other interrupts are disabled. table 7. mode of operation description mode i 2 c bus state vdd function description off powered down < 1.62v < vdd + 0.3v device is powered off. standby i 2 c communication with device is possible on sbyb bit of ctrl_reg1 is cleared only por and digital blocks are enabled. analog subsystem is disabled. active i 2 c communication with device is possible on sbyb bit of ctrl_reg1 is set all blocks are enabled (p or, digital, analog). sleep wake standby off active
MPL3115A2 sensors 16 freescale semiconductor, inc. 6.1 factory calibration the device is factory calibrated for sensit ivity, offset for both temperature and pressure measurements. trim values are stored, on-chip, in non-volatile memory (n vm). in normal use, further calibration is not necessary; however, in order to realiz e the highest possible accuracy, the device allows the user to ove rride the factory set offset values after power-up. the user ad - justments are stored in volatile registers. the factory calibration values are not affected, and are always used by default on power- up. 6.2 barometer/altimeter function the mode of operation of the device can be selected as barometer or altimeter. the internal sensor gives an absolute pressure signal. the absolute pressure signal is processed to provide a scaled pressure or an altitude, depending on the mode selected. the combination of a high performance sensor and the signal processing enable resolution of pressures below 1 pa and altitude resolution of better than 1 ft / 0.3m at sea level. when in barometer mode, all pressure related data is reported as 20-bit unsigned data in pascals. when in altimeter mode, all pressure data is converted to equivalent altitude, based on the us standard atmosphere a nd then stored as 20-bit 2?s com- plement value in meters and fractions of a meter. 6.2.1 barometric input in order to accurately determine the altitude by pressure, a fa cility is provided to input the local barometric pressure correc tion. the default value is 101,326 pa since the regi ster is in units of 2 pascals per lsb. 6.3 temperature function the unit contains a high resolution temperature sensor that provi des data to the user via a 16-bit data register, as well as fo r internal compensation of the pressure sensor. 6.4 autonomous data acquisition the unit can be programmed to periodically capture altitude/pre ssure and temperature data. up to 32 data acquisitions can be stored in the internal fifo. the interval between acquisitions is programmable from 1 second to 9 hours. data: (up to 32 samples over 12 days). the unit can also be programmed to make a single reading and then go to standby mode. 6.5 fifo a 32 sample fifo is incorporated to minimize the overhead of collecting multiple data sample s. the fifo stores both tem- perature and pressure/altitude data. the device can be programm ed to autonomously collect dat a at programmed intervals and store the data in the fifo. fifo interrupts can be triggered by watermark full or data contention (fifo gate) events. 6.6 external interrupts two independent interrupt out pins are provided. the configuration of the pins are programmable (polarity, open drain or push- pull.) any one of the internal interrupt sources can be routed to either pin. 6.6.1 reach target threshold pressure/altitude (src_pth) the interrupt flag is set on reaching the value stored in t he pressure/altitude target regist er. additionally, a window value p ro- vides the ability to signal when the target is nearing from either above or below the value in the pressure/altitude target reg ister. when in barometer mode, these values r epresent pressures rather than altitudes. examples: ? set altitude alert to 3000m and window value to 100m, interrupt is asserted passing 2900m, 3000m, and 3100m. ? set pressure alert to 100.0 kpa and window value to 5 kpa, interrupt can be sent passing 95 kpa, 100 kpa and 105 kpa. note: when the window value is set to 0 then the interrupt will on ly be generated when reaching or crossing the target value. 6.6.2 reach window target pressure/altitude (src_pw) the interrupt flag is set when the pressure/altitude va lue is within the window defined by the following formula: note: no interrupt is generated if the p_wnd value is set to 0. window p_tgt msb lsb , p_wnd msb lsb , ? =
MPL3115A2 sensors freescale semiconductor, inc. 17 6.6.3 reach target threshold temperature (src_tth) interrupt flag is set on reaching the value stored in the temp erature target register. additi onally a window value provides abi lity to signal when the target is nearing fr om either above or below the value in the temperature target register. note: when the window value is set to 0 then the interrupt will on ly be generated when reaching or crossing the target value. 6.6.4 reach window target temperature (src_tw) the interrupt flag is set when the temperature value is within the window defined by the following formula: note: no interrupt is generated if the t_wnd value is set to 0. 6.6.5 pressure/altitude change (src_pchg) interrupt flag is set if sequential pressu re/altitude acquisitions exceed value stored in pressure/altitude window value regist er. 6.6.6 temperature change (src_tchg) interrupt flag is set if sequential temperature acquisitions e xceed the value stored in pressu re/altitude window value register . 6.6.7 data ready interrupt flag is set when new data or a data overwrite even t has occurred. ptow and/or ptdr (dr_status register) must be set for an interrupt to be generated. 6.6.8 fifo event interrupt flag is set when either an overflow or watermark ev ent has occurred. for more information please see section 7.3. 6.7 pressure/altitude and temperature delta registers show the differences from the last pressure/altitude and temperature samples. 6.8 min/max data value storage registers record the minimum and maximum pressure/altitude and temperature. 6.9 digital interface the registers embedded inside the dev ice are accessed through an i 2 c serial interface. there are two signals associated with the i 2 c bus: the serial clock line (scl) and the se rial data line (sda). the latter is a bidirectional line used for sending and receiving the data to/fro m the interface. external pull-up resistors connected to v dd are expected for sda and scl. when the bu s is free both the lines are high. the i 2 c interface is compliant with fast mode (400 khz), and normal mode (100 khz) i 2 c standards 6.9.1 i 2 c operation the transaction on the bus is started through a start condition (start) signal. start condition is defined as a high to low transition on the data line while the scl line is held high. afte r start has been transmitted by the master, the bus is conside red busy. the next byte of data transmitted after start contains t he slave address in the first 7 bits, and the eighth bit tells wh ether the master is receiving data from the slave or transmitting data to the slave. when an address is sent, each device in the syst em compares the first seven bits after a start condition with its a ddress. if they match, the device considers itself addressed by the master. the ninth clock pulse, following the slave address byte (and each subsequent byte) is the acknowledge (ack). the trans- mitter must release the sda line during the ack period. the receiver must then pull th e data line low so that it remains stable low during the high period of the acknowledge clock period. table 8. serial inte rface pin description s name description scl i 2 c serial clock sda i 2 c serial data window t_tgt t_wnd ? =
MPL3115A2 sensors 18 freescale semiconductor, inc. the number of bytes per transfer is unlimited. if the master can' t receive another complete byte of data until it has performed some other function, it can hold the clock line, scl low to force the transmitter in to a wait state. data transfer only continu es when the master is ready for another byte and releases the clock line. a low to high transition on the sda line while the scl line is hi gh is defined as a stop condition (stop). a data transfer is always terminated by a stop. a master may also issue a repeated start during a data transfer. device expects repeated starts to be used to randomly read from specific registers. the standard 7-bit i 2 c slave address is 0x60 or 1100000. 8-bi t read is 0xc1, 8-bit write is 0xc0. consult factory for alternate addresses. for further information and examples, please read application note an4519 sensor i 2 c setup and faq.
MPL3115A2 sensors freescale semiconductor, inc. 19 7 register descriptions table 9. register address map register address name reset reset when stby to active type auto-increment address comment 0x00 sensor status register ( status ) (1)(2) 0x00 yes r 0x01 alias for dr_status or f_status 0x01 pressure data out msb ( out p_msb ) (1)(2) 0x00 yes r 0x02 0x01 bits 12-19 of 20-bit real-time pressure sample. root pointer to pressure and temperature fifo data. 0x02 pressure data out csb ( out_p_csb ) (1)(2) 0x00 yes r 0x03 bits 4-11 of 20-bit real-time pressure sample 0x03 pressure data out lsb ( out_p _lsb ) (1)(2) 0x00 yes r 0x04 bits 0-3 of 20-bit real-time pressure sample 0x04 temperature data out msb ( out_t_msb ) (1)(2) 0x00 yes r 0x05 bits 4-11 of 12-bit real-time temperature sample 0x05 temperature data out lsb ( out_t _lsb ) (1)(2) 0x00 yes r 0x00 bits 1-3 of 12-bit real-time temperature sample 0x06/0x00 sensor status register ( dr_status ) (1)(2) 0x00 yes r 0x07 data ready status information 0x07 pressure data out delta msb ( out_p_delta msb ) (1)(2) 0x00 yes r 0x08 bits 12-19 of 20-bit pressure change data 0x08 pressure data out delta csb ( out_p_delta_csb ) (1)(2) 0x00 yes r 0x09 bits 4-11 of 20-bit pressure change data 0x09 pressure data out delta lsb ( out_p_delta_lsb ) (1)(2) 0x00 yes r 0x0a bits 0-3 of 20-bit pressure change data 0x0a temperature data out delta msb ( out_t_delta_msb ) (1)(2) 0x00 yes r 0x0b bits 4-11 of 12-bit temperature change data 0x0b temperature data out delta lsb ( out_t_delta_lsb ) (1)(2) 0x00 yes r 0x06 bits 0-3 of 12-bit temperature change data 0x0c device identification register ( who_am_i ) 0xc4 no r 0x0d fixed device id number 0x0d fifo status register ( f_status ) (1)(2) 0x00 yes r 0x0e fifo status: no fifo event detected 0x0e/0x01 fifo 8-bit data access ( f_data ) (1)(2) 0x00 yes r 0x0e fifo 8-bit data access 0x0f fifo setup register ( f_setup ) (1)(3) 0x00 no r/w 0x10 fifo setup 0x10 time delay register( time_dly ) (1)(2) 0x00 yes r 0x11 time since fifo overflow 0x11 system mode register ( sysmod ) (2) 0x00 yes r 0x12 current system mode 0x12 interrupt source register ( int_source ) (1) 0x00 no r 0x13 interrupt status 0x13 pt data configuration register ( pt_data_cfg ) (1)(3) 0x00 no r/w 0x14 data event flag configuration 0x14 bar input in msb ( bar_in_msb ) (1)(3) 0xc5 no r/w 0x15 barometric input for altitude calculation bits 8-15 0x15 bar input in lsb ( bar_in_lsb ) (1)(3) 0xe7 no r/w 0x16 barometric input for altitude calculation bits 0-7
MPL3115A2 sensors 20 freescale semiconductor, inc. 0x16 pressure target msb ( p_tgt_msb ) (1)(3) 0x00 no r/w 0x17 pressure/altit ude target value bits 8-15 0x17 pressure target lsb ( p_tgt_lsb ) (1)(3) 0x00 no r/w 0x18 pressure/altit ude target value bits 0-7 0x18 temperature target ( t_tgt) (1)(3) 0x00 no r/w 0x19 temperature target value 0x19 pressure/altitude window msb ( p_wnd_msb) (1)(3) 0x00 no r/w 0x1a pressure/altitude window value bits 8-15 0x1a pressure/altitude window lsb ( p_wnd_lsb ) (1)(3) 0x00 no r/w 0x1b pressure/altitude window value bits 0-7 0x1b temperature window ( t_wnd ) (1)(3) 0x00 no r/w 0x1c temperature window value 0x1c minimum pressure data out msb ( p_min_msb ) (1)(3) 0x00 no r/w 0x1d minimum pressure/altitude bits 12-19 0x1d minimum pressure data out csb ( p_min_csb ) (1)(3) 0x00 no r/w 0x1e minimum pressure/altitude bits 4-11 0x1e minimum pressure data out lsb ( p_min_lsb ) (1)(3) 0x00 no r/w 0x1f minimum pressure/altitude bits 0-3 0x1f minimum temperature data out msb ( t_min_msb ) (1)(3) 0x00 no r/w 0x20 minimum temperature bits 8-15 0x20 minimum temperature data out lsb ( t_min_lsb ) (1)(3) 0x00 no r/w 0x21 minimum temperature bits 0-7 0x21 maximum pressure data out msb ( p_max_msb ) (1)(3) 0x00 no r/w 0x22 maximum pressure/altitude bits 12-19 0x22 maximum pressure data out csb ( p_max_csb ) (1)(3) 0x00 no r/w 0x23 maximum pressure/altitude bits 4-11 0x23 maximum pressure data out lsb ( p_max_lsb ) (1)(3) 0x00 no r/w 0x24 maximum pressure/altitude bits 0-3 0x24 maximum temperature data out msb ( t_max_msb ) (1)(3) 0x00 no r/w 0x25 maximum temperature bits 8-15 0x25 maximum temperature data out lsb ( t_max_lsb ) (1)(3) 0x00 no r/w 0x26 maximum temperature bits 0-7 0x26 control register 1 ( ctrl_reg1 ) (1)(4) 0x00 no r/w 0x27 modes, oversampling 0x27 control register 2 ( ctrl_reg2 ) (1)(4) 0x00 no r/w 0x28 acquisition time step 0x28 control register 3 ( ctrl_reg3 ) (1)(4) 0x00 no r/w 0x29 interrupt pin configuration 0x29 control register 4 ( ctrl_reg4 ) (1)(4) 0x00 no r/w 0x2a interrupt enables 0x2a control register 5 ( ctrl_reg5 ) (1)(4) 0x00 no r/w 0x2b interrupt output pin assignment 0x2b pressure data user offset register ( off_p ) 0x00 no r/w 0x2c pressure data offset 0x2c temperature data user offset register ( off_t ) 0x00 no r/w 0x2d temperature data offset 0x2d altitude data user offset register ( off_h ) 0x00 no r/w 0x0c altitude data offset 1. register contents are preserved when trans itioning from ?active? to ?standby? mode. 2. register contents are reset when transitioning from ?standby? to ?active? mode. 3. register contents can be modified anytime in ?standby? or ?active? mode. 4. modification of this register?s content s can only occur when device in ?standby? mode except the sbyb, ost and rst bit fields in ctrl_reg1 register. table 9. register address map
MPL3115A2 sensors freescale semiconductor, inc. 21 7.1 sensor status 7.1.1 status (0x00) the aliases allow the status register to be read easily befo re reading the current pressure/altitude or temperature data, delta pressure/altitude or temperature data or fifo da ta using register address auto-incrementing mechanism. 7.1.2 dr_status (0x06) the status register provides the acquisit ion status information on a per sample basis , and reflects real-time updates to the out_p and out_t registers . the same status register can be read through an alternate address. table 10. register address map with fifo modes (1) 1. the registers in area a from 0x00 to 0x05 depend on the f_mode bit setting in fifo setup register (f_setup). f_mode = 00, fifo is disabled. f_mode = 01 is circular buffer. f_mode = 10 is full stop mode. register address name reset value reset when standby to active type auto-increment address comment registers: area a (f_mode = 0, fifo disabled) 0x00/ 0x06 sensor status register ( dr_ status ) 0x00 yes r 0x01 dr_status 0x01 pressure data out msb ( out p_msb) 0x00 yes r 0x02 0x01 bits 12-19 of 20-bit real-time pressure sample. root pointer to pressure and temperature fifo data. 0x02 pressure data out csb ( out_p_csb ) 0x00 yes r 0x03 bits 4-11 of 20-bit real-time pressure sample 0x03 pressure data out lsb ( out_p _lsb ) 0x00 yes r 0x04 bits 0-3 of 20-bit real-time pressure sample 0x04 temperature data out msb ( out_t_msb ) 0x00 yes r 0x05 bits 4-11 of 12-bit real-time temperature sample 0x05 temperature data out lsb ( out_t _lsb ) 0x00 yes r 0x00 bits 0-3 of 12-bit real-time temperature sample registers: area a (f_mode > 0, fifo in circular buffer or full stop mode) 0x00/ 0x0d sensor status register ( f_status) 0x00 yes r 0x01 f_status 0x01 fifo 8-bit data access ( f_data ) 0x00 yes r 0x01 0x01 0x02 read to reserved area returns 00 0x00 n/a ? 0x03 ? 0x03 read to reserved area returns 00 0x00 n/a ? 0x04 ? 0x04 read to reserved area returns 00 0x00 n/a ? 0x05 ? 0x05 read to reserved area returns 00 0x00 n/a ? 0x00 ? table 11. alias for dr_status (0x06) or f_status (0x0d) fifo data enabled mode bit setting f_mode = 00 (1) 1. the f_mode is defined in section 7.3.3 0x00 = dr_status (0x06) f_mode > 00 0x00 = f_status (0x0d)
MPL3115A2 sensors 22 freescale semiconductor, inc. 7.1.2.1 data registers with f_mode = 00 (fifo disabled) when the fifo subsystem data ou tput register driver is disabl ed (f_mode = 00), the register indicates the real-time status information of the sample data. pdr and pow flag generation is required for the pressure/altitude event flag generator to be enabled (pdefe = 1) in the pt data configuration register (pt_data_cfg). tdr and tow flag generation is required for the temperature event fl ag generator to be enabled (tdefe = 1) in the pt data configuration register (pt_data_cfg). ptdr and ptow flag generation requires the drem event flag generator to be enabled in th e pt data configuration register (pt_data_cfg). table 12. dr_status register 76543210 r ptow pow tow 0 ptdr pdr tdr 0 w r e s e t00000000 table 13. dr_status bit descriptions name description ptow pressure/altitude or temperature data overwrite. ptow is set to 1 whenever new data is acquired before completing the retrieval of the previous set. this event occurs when the cont ent of at least one data register (i.e. out_p, out_t) has been overwritten. ptow is cleared when the high-bytes of the dat a (out_p_msb or out_t_msb) are read, when f_mode is zero. ptow is cleared by reading f_data register when f_mode > 0. default value: 0 0: no data overwrite has occurred 1: previous pressure/altitude or temperature data was overwr itten by new pressure/altitude or temperature data before it was read pow pressure/altitude data overwrite. pow is set to 1 whenever a new pressure/altitude acquisition is completed before the retrieval of the previous data. when this occurs the previous data is overwr itten. pow is cleared anytime out_p_msb register is read, when f_mode is zero. pow is cleared by reading f_ data register when f_mode > 0. default value: 0 0: no data overwrite has occurred 1: previous pressure/altitude data was overwritt en by new pressure/altitude data before it was read tow temperature data overwrite. tow is set to 1 whenever a new temperature acquisition is completed before the retrieval of the previous data. when this occurs the previous data is overwritten. tow is cl eared anytime out_t_msb register is read, when f_mode is zero. tow is cleared by reading f_data register when f_mode > 0. default value: 0 0: no data overwrite has occurred 1: previous temperature data was overwritten by new temperature data before it was read ptdr pressure/altitude or temperature data ready. ptdr signals that a new acquisition for either pressure/altitude or temperature is available. ptdr is cleared anytime out_p_m sb or out_t_msb register is read, when f_mode is zero. ptdr is cleared by reading f_data register when f_mode > 0. default value: 0 0: no new set of data ready 1: a new set of data is ready pdr pressure/altitude new data available. pdr is set to 1 whenev er a new pressure/altitude data acquisition is completed. pdr is cleared anytime out_p_msb register is read, when f_mode is zero. pdr is cleared by reading f_data register when f_mode > 0. 0: no new pressure/altitude data is available 1: a new set of pressure/altitude data is ready tdr temperature new data available. tdr is set to 1 whenever a temperature data acquisition is completed. tdr is cleared anytime out_t_msb register is read, when f_mode is zero . tdr is cleared by reading f_ data register when f_mode > 0. 0: no new temperature data ready 1: a new temperature data is ready
MPL3115A2 sensors freescale semiconductor, inc. 23 7.1.3 out_p_msb (0x01), out_p_csb (0x02), out_p_lsb (0x03), out_t_msb (0x04), out_t_lsb (0x05) the altitude data is arranged as 20-bit 2?s complement value in meters. the data is stored as meters with the 16 bits of out_p_msb and out_p_csb and with fractions of a meter stored in bits 7-4 of out_p_lsb. be aware that the fractional bits are not signed, therefore, they are not represented in 2?s complement. the pressure data is arranged as 20-bit unsigned data in pascals. the first 18 bits are located in out_p_msb, out_p_csb and bits 7-6 of out_p_lsb. the 2 bits in position 5-4 of out_p_lsb represent the fractional component. when raw bit is set (ctrl_reg1), then the raw value is stored in all 24 bits of out_p_msb, out_p_csb and out_p_lsb. the temperature data is arranged as 12-b it 2?s complement value in degrees c. the 8 bits of out_t_msb representing de- grees and with fractions of a degree are stored in 4 bits in position 7-4 of out_t_ lsb. be aware that the fractional bits are n ot signed, therefore, they are not represent ed in 2?s complement. when raw is selected then the raw value is stored in all 16 bits of out_t_msb and out_t_lsb. the sample data output registers store the current sample data if the fifo data output register driver is disabled, but if the fifo data output register driver is enabled, the sample data output registers point to the head of the fifo buffer which contai ns the previous pressure/altitude and temperature data samples. 7.1.3.1 data registers with f_mode = 00 the dr_status register, out_p_msb, out_p_csb, out_p_ lsb, out_t_msb, and out_t_lsb are stored in the auto- incrementing address range of 0x00 to 0x05. this allows the host controller to read the status register followed by the 20-bit pres- sure/altitude and 12-bit temperature in a 6 byte i 2 c transaction. if the fifo data output register driver is enabled (f_mode > 00), register 0x01 points to the fifo read pointer, while register s 0x02, 0x03, 0x04, 0x05, return a value of zero when read. table 14. out_p_msb register 7 6543210 r pd19 pd18 pd17 pd16 pd15 pd14 pd13 pd12 w r e s e t00000000 table 15. out_p_csb register 7 6543210 r pd11 pd10 pd9 pd8 pd7 pd6 pd5 pd4 w r e s e t00000000 table 16. out_p_lsb register 7 6543210 r pd3 pd2 pd1 pd0 0 0 0 0 w r e s e t00000000 table 17. out_t_msb register 7 6543210 r td11 td10 td9 td8 td7 td6 td5 td4 w r e s e t00000000 table 18. out_t_lsb register 7 6543210 rtd3 td2 td1 td0 0 0 0 0 w r e s e t00000000
MPL3115A2 sensors 24 freescale semiconductor, inc. 7.1.4 out_p_delta_msb (0x07), out_p_delta_csb (0x08), out_p_delta_lsb (0x09), out_t_ delta_msb (0x0a), out_t_delta_lsb (0x0b) differences from last pressure/a ltitude and temperature samples. the altitude data is arranged as 20-bit 2?s complement valu e in meters. stored as meters with the 16 bits of out_p_delta_msb and out_p_delta_csb and with fractions of a meter stored in 4 bits in position 7-4 of out_p_delta_lsb. the pressure is arranged as 20-bit 2?s complement value in pascals. the first 18 bits are located in out_p_delta_msb, out_p_delta_csb and bits 7-6 of out_p_delta_lsb. the 2 bits in position 5-4 of out_p_de lta_lsb represent the frac- tional component. the temperature data is arranged as 12-bi t values in degrees c. the 8 bits of out_t_delta_msb representing degrees and with fractions of a degree stored in 4 bits in position 7-4 of out_t_delta_lsb. in raw mode, these registers are not used and their values are not updated. note: the out_p_delta, out_t_delta regist ers store the difference da ta information regardless of the state of the fifo data output register driv er bit, f_mode > 00. table 19. out_p_delta _msb register 7 6543210 r pdd19 pdd18 pdd17 pdd16 pdd15 pdd14 pdd13 pdd12 w r e s e t00000000 table 20. out_p_delta_csb register 7 6543210 r pdd11 pdd10 pdd9 pdd8 pdd7 pdd6 pdd5 pdd4 w r e s e t00000000 table 21. out_p_delta_lsb register 7 6543210 r tdd3 tdd2 tdd1 tdd0 0 0 0 0 w r e s e t00000000 table 22. out_t_delta _msb register 7 6543210 r tdd11 tdd10 tdd9 tdd8 tdd7 tdd6 tdd5 tdd4 w r e s e t00000000 table 23. out_t_delta_lsb register 7 6543210 r tdd3 tdd2 tdd1 tdd0 0 0 0 0 w r e s e t00000000
MPL3115A2 sensors freescale semiconductor, inc. 25 7.2 device id 7.2.1 who_am_i (0x0c) device identification register. this regist er contains the device identifier which is set to 0xc4 by default. the value is fact ory programmed. consult factory for custom alternate values. 7.3 fifo setup 7.3.1 f_status (0x0d) if the fifo subsystem data output register dr iver is enabled, the status register indi cates the current stat us information of t he fifo subsystem. the f_ovf and f_wmrk_flag flags remain asserted while the even t source is still active, but the user can clear the fifo interrupt bit flag in the interrupt source register (int_source) by re ading the f_status register. therefore the f_ovf bit flag will remain asserted while the fifo has overflowed and the f_wm rk_flag bit flag will remain asserted while the f_cnt value is greater than then f_wmrk value. table 24. who_am_i register 7 6543210 r w reset (nvm data) (nvm data) (nvm data) (nvm data) (nvm data) (nvm data) (nvm data) (nvm data) 11000100 table 25. f _ status 7 6 543210 r f_ovf f_wmrk_flag f_cnt5 f_cnt4 f_cnt3 f_cnt2 f_cnt1 f_cnt0 w r e s e t0 0 000000 table 26. fifo flag event descriptions f_ovf f_wmrk_flag event description 0 ? no fifo overflow events detected. 1 ? fifo overflow event detected. ? 0 no fifo watermark events detected. ? 1 fifo watermark event detected. fifo sample count greater than watermark value. table 27. fifo sample count bit descriptions name description f_cnt[5:0] fifo sample counter. f_cnt[5:0] bits indicate the number of samples currently stored in the fifo buffer. count 000000 indicates that the fifo is empty. default value: 00_0000. (000001 to 100000 indicates 1 to 32 samples stored in fifo
MPL3115A2 sensors 26 freescale semiconductor, inc. 7.3.2 f_data (0x0e) f_data is a read only address which provides access to 8-bit fifo data. fifo holds a maximum of 32 samples; a maximum of 5 x 32 = 160 data bytes of samples can be read. when f_mode bit in fifo setup (f_setup) register is set to logic ?1?, the f_data pointer shares the same address location as out_p_msb (0x01) ; therefore all accesses of the fifo buffer data use the i 2 c address 0x01. reads from the other data registers (0 x02, 0x03, 0x04, 0x05) will return a value of 0x00. note: the fifo will not suspend to data accumulation during read transactions to f_data. 7.3.3 f_setup (0x0f) a fifo sample count exceeding the watermark event does not stop the fifo from accepting new data. the fifo update rate is dictated by the selected system acqu isition rate (st bits of ctrl_reg2). when a byte is read from the fifo buffer the oldest sample data in the fifo buffer is returned and also deleted from the front of the fifo buffer, while the fifo sample count is decremented by one. it is assume d that the host application shall use the i 2 c burst read transaction to dump the fifo. table 28. f_data 8-bit data access register 7 6543210 rf _ d a t a w r e s e t00000000 table 29. read accesses through f_data 1 st read out_p_msb (oldest) 2 nd read out_p_csb (oldest) 3 rd read out_p_lsb (oldest) 4 th read out_t_msb (oldest) 5 th read out_t_lsb (oldest) . . . . . . out_t_lsb (oldest) 0x00 0x00 table 30. f_setup register 7 6543210 r f_mode1 f_mode0 f_wmrk5 f_wmrk4 f_wmrk3 f_wmrk2 f_wmrk1 f_wmrk0 w r e s e t00000000 table 31. f_setup bit descriptions name description f_mode[1:0] (1)(2)(3) fifo buffer overflow mode. default value: 0 00: fifo is disabled 01: fifo contains the most recent samples when overflow ed (circular buffer). oldest sample is discarded to be replaced by new sample 10: fifo stops accepting new samples when overflowed 11: not used the fifo is flushed whenever the fifo is disabled, or transitioning from ?standby? mode to ?active? mode. disabling the fifo (f_mode = 00) resets the f_ovf, f_wmrk_flag, f_cnt to zero. a fifo overflow event (i.e. f_cnt = 32) will assert th e f_ovf flag and a fifo sample count equal to the sample count watermark (i.e. f_wmrk) asserts the f_wmrk_fla g event flag. to switch between fifo modes, first disable the fifo and then write the new value to f_mode.
MPL3115A2 sensors freescale semiconductor, inc. 27 7.4 time delay register 7.4.1 time_dly(0x10) the time delay regi ster contains the number of ticks of data sample ti me since the last byte of the fifo was written. this register starts to increment on fifo overflow or data wrap and clears when last byte of fifo is read. 7.5 system mode register 7.5.1 sysmod (0x11) the system mode register indicates the current device operating mode. 7.6 system interrupt status 7.6.1 int_source (0x12) interrupt source register. the bits that are set (logic ?1?) indicate which function has asserted its interrupt and conversely, bits that are cleared (logic ?0?) indicate which function has not asserted its interrupt. the setting of the bits is rising edge sensitive, the bit is set by a low to high state change and reset by reading the appropr iate source register. f_wmrk[5:0] (2) fifo event sample count watermark. default value: 00_0000. these bits set the number of fifo samples required to tr igger a watermark interrupt. a fifo watermark event flag (f_wmrk_flag) is raised when fifo sample count f_cnt[ 5:0] value is equal to the f_ wmrk[5:0] watermark. setting the f_wmrk[5:0] to 00_0000 will disable the fifo watermark event flag generation. 1. this bit field can be written in active mode. 2. this bit field can be written in standby mode. 3. the fifo mode (f_mode) cannot be switc hed between the two operational modes (01 & 10). table 32. time delay register 7 6543210 r td7 td6 td5 td4 td3 td2 td1 td0 w r e s e t00000000 table 33. sysmod register 7 6543210 r 0 0 0 0 0 0 sysmod w r e s e t00000000 table 34. sysmod bit descriptions name description reserved reserved bits 7-1, will always read 0. sysmod system mode. default value: 0. 0: standby mode 1: active mode table 35. int_source register 7 6543210 r src_drdy src_fifo src_pw src_tw src_pth src_tth src_pchg src_tchg w r e s e t00000000 table 31. f_setup bit descriptions
MPL3115A2 sensors 28 freescale semiconductor, inc. 7.7 sensor data 7.7.1 pt_data_cfg (0x13) the pt_data_cfg register configures the pressure data, temperature data and event flag generator. table 36. int_source bit descriptions name description src_drdy data ready interrupt status bit. logic ?1? indicates that pr essure/altitude or temperature data ready interrupt is active indicating the presence of new data and/or a dat a overwrite, otherwise it is a logic ?0?. this bit is asserted when the ptow and/or ptdr is set and the functional block interrupt has been enabled. this bit is cleared by reading the stat us and pressure/temperature register. src_fifo fifo interrupt status bit. logic ?1? indicates that a fifo in terrupt event such as an overflow event has occurred. logic ?0? indicates that no fifo interrupt event has occurred. this bit is cleared by reading the f_status register. fifo interrupt event generators: fifo ov erflow, or (watermark: f_cnt = f_wmrk). src_pw altitude/pressure alerter status bit near or equal to target pr essure/altitude (near is within target value window value). window value needs to be non zero for interrupt to trigger. src_tw temperature alerter status bit near or equal to target tem perature (near is within target value window value.) window value needs to be non zero for interrupt to trigger. src_pth altitude/pressure threshold interrupt. with the window set to a non zero value, the trigger will occur on crossing any of the thresholds: upper, center or lower. if the window is set to 0, it will only trigger on crossing the center threshold. src_tth temperature threshold interrupt. with the window set to a non zero value, the trigger will occur on crossing any of the thresholds: upper, center or lower. if the window is set to 0, it will only trigger on crossing the center threshold. src_pchg delta p interrupt status bit. src_tchg delta t interrupt status bit table 37. pt_data_cfg register 7 6543210 r0 0 0 0 0 drem pdefe tdefe w r e s e t00000000 table 38. pt_data_cfg bit descriptions name description drem data ready event mode. if the drem bit is set logic ?1? and one or more of the dat a ready event flags (pdefe, tdefe) are enabled, then an event flag will be raised upon change in state of the data. if the drem bit is cleared logic ?0? and one or more of the data ready event flags are enabled, then an event flag will be raised whenever the system acquires a new set of data. default value: 0. 0: event detection disabled 1: generate data ready event flag on new pressure/altitude or temperature data pdefe data event flag enable on new pressure/altitude data. default value: 0 0: event detection disabled 1: raise event flag on new pressure/altitude data tdefe data event flag enable on new temperature data. default value: 0 0: event detection disabled 1: raise event flag on new temperature data
MPL3115A2 sensors freescale semiconductor, inc. 29 7.8 barometric pressure input 7.8.1 bar_in_msb, bar_in_lsb (0x14, 0x15) barometric input for altitude calculations. input is e quivalent sea level pressure for measurement location. value is input in 2 pa units. units are input as unsigned 16-bit intege rs. the default value is 101,326 pa. the def ault value can be changed by writing to this register 7.9 pressure/altitude target 7.9.1 p_tgt_msb, p_tgt_lsb (0x16, 0x17) altitude/pressure target value. this value works in co njunction with the window value (p_wnd_msb and p_wnd_lsb). in altitude mode, the register value is 16-bit 2?s complement value in meters. in pressure mode, the value is 16-bit unsigned value in 2 pa units. 7.10 temperature target 7.10.1 t_tgt (0x18) temperature target value input in 2?s complement value in ?c. table 39. bar_in_msb register 7 6543210 r bar[15] bar[14] bar[13] bar[12] bar[11] bar[10] bar[9] bar[8] w r e s e t11000101 table 40. bar_in_lsb register 7 6543210 r bar[7] bar[6] bar[5] bar[4] bar[3] bar[2] bar[1] bar[0] w r e s e t11100111 table 41. p_tgt_msb register 7 6543210 r p_tgt15 p_tgt14 p_tgt13 p_tgt12 p_tgt11 p_tgt10 p_tgt9 p_tgt8 w r e s e t00000000 table 42. p_tgt_lsb register 7 6543210 r p_tgt7 p_tgt6 p_tgt5 p_tgt4 p_tgt3 p_tgt2 p_tgt1 p_tgt0 w r e s e t00000000 table 43. t_tgt register 7 6543210 r t_tgt7 t_tgt6 t_tgt5 t_tgt4 t_tgt3 t_tgt2 t_tgt1 t_tgt0 w r e s e t00000000
MPL3115A2 sensors 30 freescale semiconductor, inc. 7.11 pressure/altitude window 7.11.1 p_wnd_msb, p_wnd_lsb (0x19, 0x1a) pressure/altitude window value. unsigned 16-bit valu e of window value in meters or in 2 pa units 7.12 temperature window 7.12.1 t_wnd (0x1b) temperature alarm window value. unsigned 8-bit value ?c. 7.13 minimum pressure 7.13.1 p_min_msb, p_min_csb, p_min_lsb (0x1c, 0x1d, 0x1e) register with captured minimum pressure/altitude value. the altitude data is arranged as 20-bit 2?s complement value in meters. stored as meters with the 16 bits of p_min_msb and p_min_csb and with fractions of a meter stored in 4 bits in position 7-4 of p_min_lsb. the pressure is arranged as 20-bit unsigned data in pascals. the first 18 bits are located in p_min_msb, p_min_csb and bits 7-6 of p_min_lsb. the 2 bits in position 5- 4 of p_min_lsb represent the fractional component. the register is cleared on power-up or ma nually by writing ?0? to the registers table 44. p_wnd_lsb register 7 6543210 r p_w15 p_w 14 p_w 13 p_w 12 p_w 11 p_w 10 p_w 9 p_w 8 w r e s e t00000000 table 45. p_wnd_msb description 7 6543210 r p_w7 p_w 6 p_w 5 p_w 4 p_w 3 p_w 2 p_w 1 p_w 0 w r e s e t00000000 table 46. t_wnd register 7 6543210 r t_w7 t_w6 t_w5 t_w4 t_w3 t_w2 t_w1 t_w0 w r e s e t00000000 table 47. p_min_msb register 7 6543210 r p_min 19 p_min 18 p_min 17 p_min 16 p_min 15 p_min 14 p_min 13 p_min 12 w r e s e t00000000 table 48. p_min_csb register 7 6543210 r p_min 11 p_min 10 p_min 9 p_min 8 p_min 7 p_min 6 p_min 5 p_min 4 w r e s e t00000000 table 49. p_min_lsb register 7 6543210 r p_min 3 p_min 2 p_min 1 p_min0 0000 w r e s e t00000000
MPL3115A2 sensors freescale semiconductor, inc. 31 7.14 maximum pressure 7.14.1 p_max_msb, p_max_csb, p_max_lsb (0x21, 0x22, 0x23) register with captured maximum pressure/altitude value. the altitude data is arranged as 20-bit 2?s complement val ue in meters. stored as meters with the 16 bits of p_max_msb and p_max_csb and with fractions of a meter stor ed in 4 bits in position 7-4 of p_max_lsb. the pressure is arranged as 20-bit unsigned data in pascals. the first 18 bits are located in p_max_msb, p_max_csb and bits 7-6 of p_max_lsb. the 2 bits in position 5- 4 of p_max_lsb represent the fractional component. the register is cleared on power-up or ma nually by writing ?0? to the registers. 7.15 minimum temperature 7.15.1 t_min_msb, t_min_lsb (0x1f, 0x20) register with captured minimum temperature value. the temperature data is arranged as 12 -bit 2?s complement value in degrees c. the 8 bits of t_min_msb representing de- grees and with fractions of a degree stored in 4 bits in position 7-4 of t_min_lsb. the register is cleared on power-up or ma nually by writing ?0? to the registers. table 50. p_max_msb register 7 6543210 r p_max 19 p_max 18 p_max 17 p_max 16 p_max 15 p_max 14 p_max 13 p_max 12 w r e s e t00000000 table 51. p_max_csb register 7 6543210 r p_max 11 p_max 10 p_max 9 p_max 8 p_max 7 p_max 6 p_max 5 p_max 4 w r e s e t00000000 table 52. p_max_lsb register 7 6543210 r p_max 3 p_max 2 p_max 1 p_max0 0000 w r e s e t00000000 table 53. t_min_msb register 7 6543210 r t_min 11 t_min 10 t_min 9 t_min 8 t_min 7 t_min 6 t_min 5 t_min 4 w r e s e t00000000 table 54. t_min_lsb register 7 6543210 r t_min 3 t_min 2 t_min 1 t_min 0 0000 w r e s e t00000000
MPL3115A2 sensors 32 freescale semiconductor, inc. 7.16 maximum temperature 7.16.1 t_max_msb, t_max_lsb (0x24, 0x25) register with captured maximum temperature value. the temperature data is arranged as 12-bit 2?s complement value in degrees c. the 8 bits of t_max_msb representing degrees and with fractions of a degree stor ed in 4 bits in position 7-4 of t_max_lsb. the register is cleared on power-up or manually by writing 0 to the registers 7.17 control registers note: except for standby mode selection and ost (one shot mode ), the device must be in standby mode to change any of the fields within ctrl_reg1 (0x26). 7.17.1 ctrl_reg1 (0x26) table 55. t_max_msb register 7 6543210 r t_max 11 t_max 10 t_max 9 t_max 8 t_max 7 t_max 6 t_max 5 t_max 4 w r e s e t00000000 table 56. t_max_lsb register 7 6543210 r t_max 3 t_max 2 t_max 1 t_max 0 0000 w r e s e t00000000 table 57. ctrl_reg1 register 7 6543210 r alt raw os2 os1 os0 0 ost sbyb w rst r e s e t00000000 table 58. ctrl_reg1 bit descriptions name description sbyb this bit is sets the mode to active, where the system will ma ke measurements at periodic times based on the value of st bits. default value: 0 (standby) 0: part is in standby mode 1: part is active ost ost bit will initiate a measurement immediately. if the sbyb bit is set to active, setting the ost bit will initiate an immedia te measurement, the part will then return to ac quiring data as per the setting of the st bits in ctrl_reg2. in this mode, the ost bit does not clear itself and must be cleared and se t again to initiate another immediate measurement. one shot: when sbyb is 0, the ost bit is an auto-clear bit. when ost is set, the devic e initiates a measurement by going into active mode. once a pressure/altitude and temperature measurem ent is completed, it clears the ost bit and comes back to standby mode. user shall read the value of th e ost bit before writing to this bit again. rst software reset. this bit is used to activate the software reset. the boot mechanism can be enabled in standby and active mode. when the boot bit is enabled the boot mechanism resets all functional blo ck registers and loads the respective internal registe rs with default values. if the system was already in standby mode, the reboot proces s will immediately begin; else if the system was in active mode, the boot mechanism will automatica lly transition the system from active m ode to standby mode, only then can the reboot process begin. the i 2 c communication system is reset to avoid accidental corrupted data access. at the end of the boot process the rst bit is de-asserted to 0. reading this bit will return a value of zero. default value: 0 0: device reset disabled 1: device reset enabled
MPL3115A2 sensors freescale semiconductor, inc. 33 note: raw bit overrides the alt mode and writes uncompensated pressure and temperature data 7.17.2 ctrl_reg2 (0x27) os[2:0] oversample ratio. these bits select the oversampling ratio. value is 2 os . the default value is 000 for a ratio of 1. raw raw output mode. raw bit will output adc data with no post processi ng, except for oversampling. no scaling or offsets will be applied in the digital domain. the fifo must be disabled and all other functionality: alarms, deltas, and other interrupts are disabled. alt altimeter-barometer mode. default value: 0 1: part is in altimeter mode 0: part is in barometer mode table 59. system output sample rate selection os2 os1 os0 oversample ratio minimum time between data samples 00016 m s 00121 0 m s 01041 8 m s 01183 4 m s 1 0 0 16 66 ms 1 0 1 32 130 ms 1 1 0 64 258 ms 1 1 1 128 512 ms table 60. ctrl_reg2 register 7 6543210 r0 0 load_outp ut alarm_sel st[3] st[2] st[1] st[0] w r e s e t00000000 table 61. ctrl_reg2 bit descriptions name description st[3:0] auto acquisition time step. default value: 0 step value is 2 st : giving a range of 1 second to 2 15 seconds (9 hours) alarm_sel the bit selects the target value for src_pw/src_tw and src_pth/src_tth default value: 0 0: the values in p_tgt_msb, p_tgt_lsb and t_tgt are used (default) 1: the values in out_p/out_t are used for calculating the interrupts src_pw/src_tw and src_pth/src_tth. load_output this is to load the target values for src_pw/src_tw and src_pth/src_tth. default value: 0 0: do not load out_p/out_t as target values 1: the next values of out_p/out_t are used to set the target values for the interrupts. note: 1. this bit must be set at least once if alarm_sel=1 2. to reload the next out_p/out_t as the target values clear and set again. table 58. ctrl_reg1 bit descriptions
MPL3115A2 sensors 34 freescale semiconductor, inc. 7.17.3 ctrl_reg3 (interrupt ctrl register) (0x28) 7.17.4 ctrl_reg4 [interrupt enable register] (0x29) the corresponding functional block interrupt enable bit allows th e functional block to route its event detection flags to the s ys- tem?s interrupt controller. the interrupt controller routes the enabled functional block interrupt to the int1 or int2 pin. table 62. ctrl_reg3 register 7 6543210 r0 ipol1 pp_od1 0 ipol2 pp_od2 w r e s e t00000000 table 63. ctrl_reg3 description name description ipol1 the ipol bit selects the polarity of the interrupt signal. when ipol is ?0? (default value) any interrupt event will signalled with a logical ?0'. interrupt polarity active high, or active low on interrupt pad int1. default value: 0 0: active low 1: active high pp_od1 this bit configures the interrupt pin to push-pull or in open drain mode. the default val ue is 0 which corresponds to push-pull mode. the open drain configuration can be used for connecting multiple interrupt signals on the same interrupt line. push-pull/open drain selection on interrupt pad int1. default value: 0 0: internal pullup 1: open drain ipol2 interrupt polarity active high, or active low on interrupt pad int2. default value: 0 0: active low 1: active high pp_od2 push-pull/open drain selection on interrupt pad int2. default value: 0 0: internal pull-up 1: open drain table 64. ctrl_reg4 register 7 6 5 4 3 2 1 0 r int_en_drdy int_en _fifo int_en_pw int_en_tw int_en_pth int_en_tth int_en_pchg int_en_tchg w reset 0 0 0 0 0 0 0 0 table 65. interrupt enable register description interrupt enable description int_en_drdy interrupt enable. default value: 0 0: data ready interrupt disabled 1: data ready interrupt enabled int_en_fifo interrupt enable. default value: 0 0: fifo interrupt disabled 1: fifo interrupt enabled int_en_pw interrupt enable. default value: 0 0: pressure window interrupt disabled 1: pressure window interrupt enabled
MPL3115A2 sensors freescale semiconductor, inc. 35 int_en_tw interrupt enable. default value: 0 0: temperature window interrupt disabled 1: temperature window interrupt enabled. int_en_pth interrupt enable. default value: 0 0: pressure threshold interrupt disabled 1: pressure threshold interrupt enabled. int_en_tth interrupt enable. default value: 0 0: temperature threshold interrupt disabled 1: temperature threshold interrupt enabled. int_en_pchg interrupt enable. default value: 0 0: pressure change interrupt disabled 1: pressure change interrupt enabled. int_en_tchg interrupt enable. default value: 0 0: temperature change interrupt disabled 1: temperature change interrupt enabled. table 65. interrupt enable register description
MPL3115A2 sensors 36 freescale semiconductor, inc. 7.17.5 ctrl_reg5 [interrupt configuration register] (0x2a) figure 8. interrupt controller block diagram table 66. ctrl_reg5 register 7 6 5 4 3 2 1 0 r int_cfg_drdy int_cfg_fifo int_cfg_pw int_cfg_tw int_cfg_pth int_cfg_tth int_cfg_pchg int_cfg_tchg w reset 0 0 0 0 0 0 0 0 table 67. interrupt configuration register descriptions interrupt configuration description int_cfg_drdy int1/int2 configuration. default value: 0 0: interrupt is routed to int2 pin; 1: interrupt is routed to int1 int_cfg_fifo int1/int2 configuration. default value: 0 0: interrupt is routed to int2 pin; 1: interrupt is routed to int1 int_cfg_pw int1/int2 configuration. default value: 0 0: interrupt is routed to int2 pin; 1: interrupt is routed to int1 int_cfg_tw int1/int2 configuration. default value: 0 0: interrupt is routed to int2 pin; 1: interrupt is routed to int1 int_cfg_pth int1/int2 configuration. default value: 0 0: interrupt is routed to int2 pin; 1: interrupt is routed to int1 int_cfg_tth int1/int2 configuration. default value: 0 0: interrupt is routed to int2 pin; 1: interrupt is routed to int1 int_cfg_pchg int1/int2 configuration. default value: 0 0: interrupt is routed to int2 pin; 1: interrupt is routed to int1 int_cfg_tchg int1/int2 configuration. default value: 0 0: interrupt is routed to int2 pin; 1: interrupt is routed to int1 interrupt controller pressure change temperature window pressure window temperature threshold pressure threshold fifo data ready int_enable int_cfg int1 int2 88 temperature change event flag 0 event flag 2 event flag 1 event flag 3 event flag 4 event flag 5 event flag 6 event flag 7
MPL3115A2 sensors freescale semiconductor, inc. 37 the system?s interrupt controller uses the corresponding bit field in t he ctrl_reg5 register to dete rmine the rout ing table for the int1 and int2 interrupt pins. if the bit value is logic ?0 ? the functional block?s interrupt is routed to int2, and if the bit value is logic ?1? then the interrupt is routed to int1. all interrupts routed to int1 or int2 are logically or?d as illustrated in figure 9 , thus one or more functional blocks can assert an interrupt pin simulta neously; therefore a host applicat ion responding to an interru pt should read the int_source register to determi ne the appropriate sour ces of the interrupt. figure 9. int1/int2 pin control logic 7.18 offset correction the 2?s complement offset correction registers values are used to trim the temperature, altitude and pressure offsets that migh t occur over the life of the product. the resolution of the pressure of fset register is 4 pa per bit. 7.18.1 off_p (0x2b) pressure user accessible offset trim value expressed as an 8- bit 2's complement number. the user offset registers may be adjusted to enhance accuracy and optimize the system perfor mance. range is from -512 to +508 pa, 4 pa per lsb. 7.18.2 off_t (0x2c) temperature user accessible offset trim value expressed as an 8-bit 2's complement number. the user offset registers may be adjusted to enhance accu racy and optimize the system performa nce. range is from -8 to +7.9375 ? c, 0.0625 ?c per lsb. table 68. off_p register 7 6543210 r off_p7 off_p6 off_p5 off_p4 off_p3 off_p2 off_p1 off_p0 w r e s e t00000000 table 69. off_p description name description off_p7-off_p0 pressure offset trim value. default value: 0000_0000. table 70. off_t register 7 6543210 r off_t7 off_t6 off_t5 off_t4 off_t3 off_t2 off_t1 off_t0 w r e s e t00000000 or src dr src pressure change src temp change . . . int
MPL3115A2 sensors 38 freescale semiconductor, inc. 7.18.3 off_h (0x2d) altitude data user offset register (off_h ) is expressed as a 2?s complement number in meters. the user offset register pro- vides user adjustment to the vertical hei ght of the altitude output. the range of values are from -128 to +127 meters. table 71. off_y description name description off_t7-off_t0 temperature offset trim value. default value: 0000_0000. table 72. off_h register 7 6543210 r off_h7 off_h6 off_h5 off_h4 off_h3 off_h2 off_h1 off_h0 w r e s e t00000000 table 73. off_y description name description off_h7-off_h0 height offset trim value. default value: 0000_0000.
MPL3115A2 sensors freescale semiconductor, inc. 39 8 soldering/landing pad information the lga package is compliant with the rohs standard. note that pin 1 index area mark er does not have any internal electrical connections. handling and soldering recommendations for pressure sensors are available in application note an3150. figure 10. MPL3115A2 recommended pcb landing pattern.
MPL3115A2 sensors 40 freescale semiconductor, inc. package dimensions case 2053-01 issue o lga package
MPL3115A2 sensors freescale semiconductor, inc. 41 package dimensions case 2053-01 issue o lga package
MPL3115A2 sensors 42 freescale semiconductor, inc. 9 tape and reel specifications figure 11. lga (3 by 5) embossed carrier tape dimensions figure 12. device orientation in chip carrier (i) measured from centerline of sprocket hole to centerline of pocket. (ii) cumulative tolerance of 10 sprocket holes is 0.20. (iii) measured from centerline of sprocket hole to centerline of pocket. (iv) other material available. dimensions are in millimeters. ao 3.35 0.10 bo 5.35 0.10 ko 1.20 0.10 f 5.50 0.10 p1 8.00 0.10 w 12.00 0.10 pin 1 index area
MPL3115A2 sensors 43 freescale semiconductor, inc. table 74. revision history revision number revision date description of changes 0 06/2011 ? initial release 1 12/2011 ? added bullet and new row under ordering information on pg 1. ? global change to register names 0x16, 0x17, 0x18, 0x19, 0x1a; changed arm to tgt. ? global change to bit names in registers 0x12 and 0x2a. ? section 2.1, table 1, changed min and max values for pressure absolute accuracy. ? table 3 changed units to ns for sda data hold time ? added figure 4. i 2 c bus transmission signals ? section 4.3: added equation ? section 5: added new paragraph. adde d new equations in 5.6.1 and 5.6.2. ? section 6: added footnote to table 11, changed tow description in table 12, updated paragraphs of sections 6.1.3 and 6.1.4, table 57 added sentence in raw description column, table 58 added column for fastest ost data output i 2 c, updated figure 5 and figure 6. 2 04/2012 ? section 2.1, table 2, changed from: -10c, to: over -10c for pressure absolute accuracy parameter, changed parameter name from: pre ssure resolution, to: pressure/altitude resolution, changed test conditions name from : barometric measurement mode, to: barometer mode and from: altimeter measurement mode, to: al timeter mode, added to table 2, footnote 1: over 50kpa to 110 kpa, added new footnote 2: oversample (osr) modes internally combine and average samples to reduce noise. ? table 3: removed footnote reference on table 3 table heading to footnote 1, added footnote 2 reference to highest speed mode test condition, added footnote 3 reference to highest resolution mode test condition, ? table 4: deleted row 8: sda valid time, row 9: sda valid acknowledge time and footnote 5. tvd,dat, changed sda and scl rise time max value from: 1000, to: 300. ? sections 6.6.2, 6.6.3, 6.6.4: added note. ? added sections 6.6.7 data ready and section 6.6.8 fifo event. ? section 7, table 9: changed register address column from: 0x00//0x06, to: 0x06/0x00, from: 0x0d//00, to: 0x0d, from: 0x0e/01, to : 0x0e/0x01, added ost to footnote 4. ? section 7.1: table 11: from (0x0b), to: (0x0 d), from: pressure/tempe rature data delta, to: pressure/temperature data or fifo data. ? section 7.3.3: added (st bits of ctrl_reg2) to sentence 2., table 31 added 1 new sentence in f_mode[1.0] description ? deleted notes from sections 7. 9.1, 7.10.1, 7.11.1 and 7.12.1. ? section 7.17.1, table 58: ost description, changed from: actv, to: sbyb, table 59: delete column: fastest ost data output rate i 2 c, deleted footnotes 1 and 2, changed values in minimum time between data samples column. ? section 7.18.1: changed from: 512, to: -512 to +508 ? section 7.18.2: changed from: -8, to: +7.9375c. ? section 7.18.3: changed from: -128, to: +128 meters. ? section 8: added: note that pin 1 index area marker does not have any internal electrical connections. handling and soldering recommendations for pressure sensors are available in application note an3150. ? section 9: added section called tape and reel specifications. 2.1 05/2012 ? changed ordering information device name from MPL3115A2t1 to MPL3115A2r1 2.2 07/2012 ? page 33, table 59 change from: 8 ms, to: 18 ms, page 38, table 72, change title from: off_t register, to: off_h register
MPL3115A2 rev 2.2 07/2012 information in this document is provided solely to enable system and software implementers to use freescale products. th ere are no express or implied copyright licenses granted hereunder to design or fabr icate any integrated circuits based on the information in this document. freescale reserves the right to make changes without further notice to any products herein. freescale makes no warranty, representation, or guarantee regarding the suitability of its products for any particular purpose, nor does freescale assume any liability arising out of the applic ation or use of any product or circuit, and specifically disclaims any and all liability, including without limitation consequential or incidental damages. ?typical? parameters that may be provided in freescale data sheets and/or specifications can and do vary in different applications, and actual performance may vary over time. all operating parameters, including ?typicals,? must be validated for each customer application by customer?s technical experts. freescale does not convey any license under its patent rights nor the rights of others. freescale sells products pursuant to standard terms and conditions of sale, which can be found at the following address: http://www.reg.net/ v2/webservices/freescale/docs/termsandconditions.htm . freescale, the freescale logo, and the energy efficient solutions logo are trademarks of freescale semiconductor, inc., reg. u.s. pat. & tm. off. xtrinsic is a trademark of freescale semiconductor, inc. all other product or service names are t he property of their respective owners. ? 2012 freescale semiconductor, inc. all rights reserved. how to reach us: home page: www.freescale.com web support: http://www.freescale.com/support rohs-compliant and/or pb-free versions of freescale products have the functi onality and electrical characteristics of their non-rohs-compliant and/or non-pb-free counterparts. for further information, see http:/www.freescale.com or contact your freescale sales representative. for information on freescale?s environmental products program, go to http://www.freescale.com/epp .


▲Up To Search▲   

 
Price & Availability of MPL3115A2

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X